/**
//文档生成日期：2005.10.07
//
//(1)概述：
//类名称：RssFeedAdd
//类说明：
//??	 “添加Rss Feed书签”的Form界面
* 
//所在子系统：RssOwlMIDlet
//
//系统总描述:
	    我们提供的RSS无线阅读器J2ME版本[开源]是一个可以下载到手机(例如Nokia7610)或者其他无线手持设备(例如PocketPC)的应用程序，用来阅读存在于Internet中广泛的RSS新闻源。

	 子系统描述：
		RSS无线阅读器的功能列表：
	RSS Feed列表
		添加Rss Feed
		编辑Rss Feed
		删除Rss Feed
	读取Rss Feed新闻
		查看新闻摘要
		重新读取Rss Feed新闻
	关于我


//(2)历史记录:
//创建人: 郑昀(2005.10.07)
//联系我: Google Talk >> zhengyun@gmail.com
//Blogs:    http://blog.csdn.net/zhengyun_ustc/以及http://www.cnblogs.com/zhengyun_ustc

//(3)版权声明:
//由于我这个版本的RSS J2ME阅读器也是基于Tommi和garrey源代码基础上改编而来的，
//所以决定遵照GPL协议的大意开放源代码，您可以自由传播和修改，在遵照GPL协议的约束条件的前提下。

//(4)相关资源:
1：《[J2ME]RSSOwlMidlet(RSS无线阅读器)开源说明》
2：《[J2ME]RSSOwlMidlet(RSS无线阅读器)设计说明》
3：下载源代码：

////////////////////////////////////////////////////////////////////*/
package com.zemo.view;

import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.TextField;

import com.zemo.control.GUIController;
import com.zemo.tools.SResources;

/**********************************************************
//RssFeedAdd
//
//Class Description:
//	添加一个新的Rss Feed书签,包括URL链接以及名称。提供“返回”和“保存”按钮。
//
//Author:
//zhengyun@zemo 2005.10.07
//
**********************************************************/
public class RssFeedAdd extends Form{
    private GUIController controller;
	
	private static Image iconAdd = SResources.getImage(
			SResources.IMG_FEEDADD);
    private Command BACK_COMMAND;
    private Command SAVE_COMMAND;
    private TextField titleField;
    private TextField urlField;
    
	public RssFeedAdd(String title, GUIController control){
		super(title);
    	controller	=	control;
    	this.setCommandListener(new RssFeedAddListener());
    	
    	BACK_COMMAND	=	new Command("返回",Command.BACK,1);
    	SAVE_COMMAND	=	new Command("保存",Command.OK,2);
    	this.addCommand(BACK_COMMAND);
    	this.addCommand(SAVE_COMMAND);
		    	
    	titleField	=	new TextField("名称","",35,TextField.ANY);
    	urlField	=	new TextField("RSS链接","http://",64,TextField.URL);
    	this.append(titleField);
    	this.append(urlField);
		
		
	}
	
	public void clear(){
		titleField.setString("");
		urlField.setString("http://");
	}
	
    /*
     * 内部监听器，监听器监听所有Command事件，并把事件响应推出来让控制器处理
     */
    private class RssFeedAddListener implements CommandListener{ 
		public void commandAction(Command command, Displayable disp){
			if(command == BACK_COMMAND){
				controller.handleEvent(GUIController.EventID.EVENT_NEW_BACK, null);
	        }
			else if(command == SAVE_COMMAND){
	            String title	=	titleField.getString();
	            String url		=	urlField.getString();
	            if((title == null || title.equals(""))
						|| (url == null || url.equals("") || url.equals("http://"))){
	                return;
	            }
               
				Object[] args = {title, url};
				controller.handleEvent(GUIController.EventID.EVENT_NEW_SAVE, args);    	                    	            
			}//end else
		}
    }//end inner class
    
}
